
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <string.h>
#include "Prueba-ArchConfig.h"

char errorArchConfig= 0;


void traerDeConfig(FILE* filename ,char* aBuscar, void* devolver){

	fscanf(filename,"%s",(char *) devolver);
	while(strcmp(aBuscar, devolver) != 0 ) {
		if(feof(filename)){
			strcpy(devolver , "error");
			// producir error por mal carga de datos de arch de conf//
			errorArchConfig = 1;
			return ;
		}
		fscanf(filename,"%s",(char *) devolver);
	}
	fscanf(filename,"%s",(char *) devolver);
	return ;
}






datosConfigPPD* configPPD(){
	char *pach= "configRAIDTemplate.txt";
	FILE *filename;
	filename = fopen(pach , "r");
	if(filename == NULL)
		perror(pach);
	archConfigPPD *datoABuscar;
	datosConfigPPD *datoConfig;
	datoABuscar=malloc(sizeof(archConfigPPD));
	datoConfig=malloc(sizeof(datosConfigPPD));

	datoABuscar->puertoFS = "puertoFS=";
	datoABuscar->puertoPPD = "puertoPPD=";
	datoABuscar->Sincroniza = "Sincroniza=";

	traerDeConfig(filename, datoABuscar->puertoPPD, &datoConfig->puertoPPD);
	traerDeConfig(filename, datoABuscar->puertoFS, &datoConfig->puertoFS);
	traerDeConfig(filename, datoABuscar->Sincroniza, &datoConfig->Sincroniza);

	if (errorArchConfig == 1){
		printf("Error en los datos del archivo de Configuracion de RAIDD");
		return NULL;
	}

	fclose(filename);

	free(datoABuscar);


	return datoConfig;
}



